王小波的计算机水平到底有多好?
(点击上方公众号,可快速关注)
转自:知乎
导读:有网友在知乎上提问:
王小波的计算机水平到底有多好,在王小波自己的小说中,王小波非常骄傲地说,写书的软件都是自己编写的,王小波是自学的还是教的?都会什么语言?谢谢各位!!
下面是 ,伯乐在线/程序员的那些事已获授权
https://www.zhihu.com/question/20964366/answer/95202867
以下文字都是我本人写的。为了让阅读方便,减少模糊性。我在文中以第三人视角描述。 而不用“我舅舅“,”我姥姥“,”我大舅舅“,”我小舅舅“之类的称呼。 这是一个十几年软件工程师的习惯而已。
我舅舅是王小波。我是个禁不住人肉的老百姓。资质平庸。 王小波一篇《我是怎样做青年思想工作》的杂文在我青年单身适龄的年代,给我个人做了最大程度的广告。算是他老人家留给我最宝贵的遗产之一。 除此之外,还有他那台用了很久的 PC,在他去世前一年送了我。
他是汇编高手。自己用汇编写了DOS下的汉字输入法。输入法有个功能,可以加 4 声。 一般拼音输入法没有这功能。这需要普通话读音正确的使用者。90年代总共也没几种汉字输入法。看过他用自己输入法打汉字。速度几乎和盲打英文一样。那时候我大学,正在疯狂苦练吉他。并没有弄懂他用了何种技术。虽然我从小学也用 Z80 和 APPLE II 做些机器码编程做游戏。但到了中学为了高考,计算机就荒废了。
他人生最后几年,WINDOWS 3.2开始普及。然后是 Win95。 他开始从 DOS 转向 WIN32 SDK 编程。最终非常任性地熬夜苦干了很长时间,把输入法转为 WIN32 SDK 在 WINDOWS下正常工作。当时 WINDOWS 已经有不少汉字输入法。 尤其到了 WIN95 时代。 他这么做也只是出于兴趣,而不是在 DOS 时代的必须。就 WIN32 SDK 我们还讨论过一些。那时候WIN32 SDK 真的是很难用。主要是互联网还没有(我是 96 年后用上的),资料很少。匈牙利命名法陌生。WIN32 的体系和 DOS大相径庭。全部都很陌生。而且完全抛弃了DOS 那套东西。所有 90 年代 DOS 底层程序员向 WIN32 的迁徙都是一部血泪史。
他人生最后一年,多媒体开始普及。光驱、声卡、2D 加速卡普及。95~96 年他开始和我合计做多媒体出版。原因现在想起来很悲伤 —— 他的书很难在大陆出版 。 他不得不想办法让他的作品能够让更多人看见。而平时维持生计,只能忍着严重的痔疮,每日给各种杂志写杂文稿件。 多媒体的兴起,让他感觉也许利用他的技术优势,自行制作电子出版物。配上插图,音乐,用电子书籍方式可以让自己作品为大众所见。他给我看了已经制作了一部分的 DEMO。就和现在用 Micromedia 多媒体制作软件制作的电子多媒体制品很像。电子书内容是黄金时代。有图案的背景。按空格可以翻页。同时有音乐。好像偶尔还会有一点动画的特效(我记不清了) 。但当时的DEMO 完全是他自己用 WIN32 写的 EXE 可执行程序。 他那是从 WIN32 SDK 移植输入法时,基本掌握了消息处理、GDI、窗口控制等方法。还有一些底层的 TRICK。
我大学后和王小波比较近。那几年每周末都在他母亲家相聚。他母亲 5 个儿女,只有他 1 个人在国内。于是他就经常住在母亲家,怕老人一个人,是个大孝子。母亲家旁边有个筒子楼里 2 间房的小屋,公共厕所和水房,冬天暖气烧得极热。偶尔我会和他住一块。里屋是他的生活起居和写作桌。外屋很小只有张床。他弟弟的孩子和我偶然会睡外屋。印象最深的就是,他烧普洱茶的电炉和玻璃茶壶。里面总是有极浓的茶水,下面沉淀着大量茶叶。估计熬夜就靠那个。
目睹了他后半截人生(从我记事起到他去世,中间他出过很多年)。感慨很多。王小波有个八叔,当时双手打算盘,无比聪明是个天才。年少夭折。王小波父亲因为搞逻辑学,引起毛泽东注意,被毛接见聊了一下逻辑学的学术相关问题。69 岁心脏病发独自倒在家中过世。王小波去世方式和他父亲一模一样。区别仅在更加年轻。王小波哥哥在受文革影响挖了 10 年煤。后来去美国博士念数理逻辑,解决了一个 100 多年未解的数理逻辑问题。最后的博士毕业论文自己系的教授搞不定,专门找了数学系的教授来看。毕业后他哥哥专心开饭馆挣钱养育 2 个女儿成人。准备财务自由后再著书立传。
我的最大感慨是,留得青山在,不怕没柴烧。天才也好,资质普通如我也好,人都只有一个人生。王小波妈妈去年 92 岁,10 月刚去世,白发人送走了自己两个儿子,又过了十几年才走。之前得过癌症,靠自己毅力锻炼,恢复了。王小波去世后一年,王小波弟弟又突然去世。当时孩子都没敢告诉老人。老太太感觉不对,但又无法得知真相。只是和我说她的疑心。当时国内只有我一人,只能瞒着。不停劝慰老人没事。老太太喃喃说,“除死无大事,除死无大事啊” 。
除死无大事。 人生在世,碰到什么坎,都只会是你人生中一个普通的节点。时间一长,什么都会成为过眼云烟。 留份宽心,也许这样导致目标感没有强到能和社会精英逐鹿。但只要有耐心,不怕挫折,假以时日,目标总会实现的。作为一个 42 岁还在以玩游戏看动漫为生活主体的大叔,保持健康和有活力地追求智慧和有趣,做自己热爱的工作,保持善良,做精神自由的人,是我从王小波的人生学到最重要的东西。希望每个喜欢王小波的人,都有自己充实和健康的身体和精神。
下面是 ,伯乐在线/程序员的那些事 已获授权
https://www.zhihu.com/question/20964366/answer/95130854
王小波的编程能力肯定是不逊色于同一时期的雷军和马化腾的,那时候雷军刚加入金山,马化腾正去创业的路上,只不过雷军后来成了金山总经理,马化腾当上了CEO,项目能力和商业能力肯定是不及后两人的。90年代有很多中关村的老板邀请过王小波加入公司当程序员,王小波也认真地考虑过,只不过后来觉得写东西更赚钱更有意思,一一回绝了。王小波的才华不限于此,他编剧的电影《东宫西宫》获得过阿根廷国际电影节最佳编剧奖,也入围了戛纳电影节,说不定活到现在在娱乐圈也是一个腕儿。
其实很多大家确实是多面手,历史上很多数学家文学功底也十分过人,高斯曾经还纠结过人生目标到底选择文学还是数学,语言大家赵元任更是同时精通语言学、数学、物理学、中国音韵学和西方音乐,可谓请棋书画数理哲无一不通,涉猎之广让人折服,君不见美国有数不清的摇滚乐青年痴迷于编程,最后有一方作为。
王小波的文章读起来不见得多有文采,但透出一股肆意妄为的劲儿,自由洒脱,他精通这么多的东西,比起那些稍有一点能耐就当权力打压别人的人,真是对自由精神最好的注解。(我夹带点私货,把自己曾经写的悼念王小波的文章放上来溜溜吧。)
———–分割线———–
王小波的忌日是4月11日,他的妻子李银河说王小波是1997年4月10号晚上去世的。时间不重要,重要的是去缅怀这一伟人。
多数人知道王小波是小说家,部分人分不清财经作家吴晓波和小说家王小波是不是一回事儿。却很少有人知道王小波可以算的上中国早期的程序员,在90年代初的时候因为国内应用软件缺乏,爱捣鼓东西的王小波利用闲暇时间学习了汇编和C语言,编了中文编辑器和输入法。中文编辑器和输入法任何一个都是大牛级的GEEK才会去尝试的东西,比如求伯君。王小波通过卖软件还挣了些钱,当时很多中观村的老板要拉他入伙,当然写代码这种来钱快的活对屌丝王小波还是有吸引力的,所幸他还是拒绝了人家。
王小波一个写小说的为什么沦落(/升级)成了程序员?这还得慢慢说。王小波大学在人大学的是贸易,毕业后在人大当了几年老师。后来去了美国匹茨堡大学读经济的研究生,到那老师跟他说你就是一写作的奇才,以后必能称霸华语文坛。老师又说你在我这什么都不用干了,好吃好住,毕业证照发,抓紧时间写小说。学成归国几年后,王小波接着又回到人大做统计学的讲师。
因为做统计,各种分析工具是必不可少的,以前人手工计算,有了计算机当然最好使用计算机,基本理工科的都知道用MATLAB做个毕设和作业是多么重要。所以当时计算机对王小波的工作是相当重要的,但是90年的时候,软件相当稀缺,电脑又相当不智能。王小波不得不自己写软件,当然开发软件也不是那么简单,所以他先是学会了FORTRAN,汇编,C等各种语言,接着又要学习数据结构,算法的相关知识,还有编译原理。
在做出中文编辑器和输入法,解决了自己的需求之后,王小波对写软件的兴趣已经没有多少了。因为他觉得写软件可以赚钱,写小说同样也可以赚钱。处于一个程序员的修养,王小波还是不断地从数据结构和算法来优化这两个软件。93年的时候,王小波买了一台286,这在当时是一台奢华无比的机子了,他自己也是这样认为的,高兴得一塌糊涂。不过这台顶配机子还是满足不了王小波的要求,后来他把时间花在了不断地去优化这台机子上面。
王小波可以算的上是个GEEK。大学学的贸易,后来又学化学,再后来转到了数学系。他的同学形容他解数学题就像杀猪一样,特别来劲,一道一道解决,那感觉可能就像打CS拿人头一样爽。不过解多了也觉得没意思。
王小波小说里的男主角基本都是理工男,除了天天意淫还有一些奇怪的想法。其中一些还有自己的发明,比如《未来世界》里的王二是个工程师,整天想着和单位一起研制的永动机,还有《红拂夜奔》里的李靖发明过一个巨大的开跟号机器,在战场上,这台机器运转起来挥舞着杠杆边开跟攻击敌人,有的人死在根号3下,有的人倒在了根号5下。这些都只有GEEK才会想得出来。
王小波干过很多事情,下过乡,考过大学,出过国,学过经济,打过代码,成了小说家,去世的那一年完成了心愿做了编剧。总之不管他干了什么,他身上让我们尊重的还是独立之精神,自由之思想。
推荐阅读
点击下图,继续阅读《第一代程序员王小波》
看完本文有收获?请转发分享给更多人
关注「程序员的那些事」,提升编程技能